草庐IT

java - 调试时如何处理 ClassNotLoadedException?

全部标签

javascript - OOP Javascript Pong 游戏中的上下文位于何处?

为了练习我的OOP知识,我正在用javascript制作Pong游戏(我知道,我知道,这就像在吉他店里玩StairwaytoHeaven)。通过实现几种不同的技术,包括基于原型(prototype)的OOP和功能风格,我已经拥有了游戏的多个功能版本。但是,我这样做并不是为了获得功能性游戏,而是为了学习。我使用的是html5Canvas和纯ol'javascript,没有框架(好吧,键盘捕获需要一点jQuery)。我有代表我游戏的Pong对象。Pong有一个属性ctx,其中包含对canvas.getContext("2d")上下文的引用。它还有一个player1、player2和ball

javascript - 从发布的 JavaScript 中删除 console.log 和其他调试代码的最佳实践?

我见过一些控制台包装器可以在带有控制台的浏览器中停止错误,而更高级的包装器可以在旧浏览器中启用日志记录。但我没有看到任何帮助打开和关闭调试代码的东西。目前我执行查找和替换以注释掉调试代码。一定有更好的方法吗?我正在使用Combres,它使用YUI来缩小JavaScript。我看过一些帖子提到使用双分号来标记要在缩小过程中删除的行。这是技巧还是好的做法? 最佳答案 也许您应该在console.log()周围有自己的包装器,并通过该包装器记录您的调试信息。这样,一旦部署到生产环境,您就可以用一个空函数替换该单个函数,这样控制台就不会充斥

javascript - 调试显示模块模式 : functions not in scope until called?

如果我在Chrome开发者工具中运行这段代码:vartest=(function(){varpublicFunction,privateFunction1,privateFunction2;privateFunction1=functionprivateFunction1(){returntrue;};privateFunction2=functionprivateFunction2(){returntrue;};publicFunction=functionpublicFunction(){privateFunction1();debugger;};return{publicFunc

javascript - 如何调试 Chrome Javascript 中 GC 事件之间看似长时间的停顿

我一直在尝试优化一个Angular网站,但在某些路由之间切换时,我的页面响应出现大量延迟。显示的每个页面都不大,但其中包含相当数量的元素和合理数量的绑定(bind)。我已经用bindonce做了我能做的,所以我用Chrome查看了调试器,我发现我的大部分时间似乎都花在了GC上。奇怪的是,每个GC之间似乎存在巨大的差距,我正试图弄清楚这些差距到底是什么。我猜是在它实际删除项目时,小条是在进行标记和清除时,但我对分析JS的这种深度并不熟悉。我的大部分工作都是在C++/C#/Java中完成的。 最佳答案 在半秒内收集了超过20MB的垃圾。

javascript - npm 开销 - 如何处理?

当通过npm安装任何东西时,它会下载许多不需要的文件。通常我正在寻找一个库的最终版本,一个*.min.js文件或类似的东西,但其余的都是无用的。你如何处理所有这些无用的文件?您是手动删除它们还是使用任何构建工具(如gulp或grunt)生成最终应用程序?我很困惑,因为我的webapp中安装了很多npm模块,文件夹大小约为50MB,但可能只有2mb。 最佳答案 npminstall--production只需执行npminstall即可引入开发和运行时依赖项。您还可以将ENV设置为服务器的全局生产环境:npmconfigsetprod

javascript - browser.explorer() 与在 Protractor 中调试的旧方法

在Protractor5.0.0中,有一个新的browser.explore()方法已添加到API。和之前有什么不同browser.pause()或browser.debugger()或browser.enterRepl()?在Protractor中调试测试的首选方法是什么? 最佳答案 各有优缺点。browser.explore()是一个非常新的工具,它还具有使用我们在测试用例中使用的相同脚本调试测试的巨大优势,例如。element(by.cssContainingText('Username')).click();browser.

javascript:如何调试键盘事件

想象一个使用自定义键盘事件处理程序的Web应用程序,它可能会进行事件冒泡或事件捕获。有没有办法(例如Firefox/Firebug插件)调试每个击键/键盘事件,比如:显示事件类型和所有属性跟踪调用了哪个javascript方法在事件冒泡的情况下调用了进一步的方法澄清我的问题:我不知道存在哪些方法处理程序以及它们的定义位置-这正是我想要找出的。 最佳答案 您可以尝试使用Firebug+Eventbug可视化通风孔扩展名。有关不同浏览器中键盘事件的一般概述,请尝试以下操作:http://unixpapa.com/js/key.html

javascript交互式调试(相当于python的pdb.set_trace())

我正在使用一些javascript代码,我希望能够在函数调用的上下文中运行一个交互式控制台-也就是说,基本上正是python的importpdb;pdb.set_trace()完成。有什么办法吗?如果不是,那么最好的近似值是多少?我目前正在使用Chrome的控制台来处理一些事情,我基本上喜欢被放到函数调用的中间并使用Chrome的控制台来查看局部变量等。 最佳答案 设置断点,Chrome的检查器将允许您检查应用的状态。点击行号。将出现一个蓝色标记。当您点击该行时,执行将暂停。在您的代码中编写一个debugger语句。当您点击语句时,

javascript - 使用 node.js 调试服务器端

我脑子里有一个关于调试的紧迫问题,你看,当我编写Javascript客户端时,我可以转到Chrome的控制台并跟踪我的变量和对象等,以更好地了解我的代码发生了什么。我只是无法理解我们如何在服务器端(Nodejs)做同样的事情?假设我的前端向我的快速服务器提交了一个表单,我该如何检查req对象是否收到了它?我该去哪里检查变量和对象(调试)服务器端代码?我绝对不能在浏览器控制台上执行此操作,因为代码存在于服务器端并在服务器端执行,所以我无法通过浏览器控制台访问服务器端对象等。 最佳答案 您仍然可以执行console.log()。它会打印

javascript - 我的网站老是 IE 崩溃,无法调试

我有一个网站突然开始崩溃InternetExplorer。网站加载并开始执行javascript,但在某处机器爆炸了。我什至没有收到脚本错误,它只是崩溃了。我尝试使用内置调试器手动单步执行js的每一行,但当然问题不会发生。如果我选择在应用程序崩溃时对其进行调试,我会看到以下消息。iexplore.exe中0x6c5dedf5处的未处理异常:0xC0000005:访问冲突读取位置0x00000090。调用堆栈中的前5项如下所示VGX.dll!6c5dedf5()[Framesbelowmaybeincorrectand/ormissing,nosymbolsloadedforVGX.dl